--------------------------------------------------------------------------------

--                                                                            --

--              R A T I O N A L _ N U M B E R S . I O                         --

--                                                                            --

--                                  S p e c                                   --

--                                                                            --

--------------------------------------------------------------------------------

with Ada.Text_Io;

package Rational_Numbers.Io is
   use Ada.Text_Io;

   Default_Width : constant Field;
   Separator : constant Character := '|';

   procedure Get
     (R : out Rational;
      Width_Of_Numerator, Width_Of_Denominator : in Field := 0);
   procedure Get
     (F : File_Type;
      R : out Rational;
      Width_Of_Numerator, Width_Of_Denominator : in Field := 0);

   procedure Put
     (R : Rational;
      Width_Of_Numerator, Width_Of_Denominator : in Field := Default_Width);
   procedure Put
     (F : File_Type;
      R : Rational;
      Width_Of_Numerator, Width_Of_Denominator : in Field := Default_Width);

private

   package Io is new Integer_Io (Integer);
   Default_Width : constant Field := Io.Default_Width;

end Rational_Numbers.Io;

